home *** CD-ROM | disk | FTP | other *** search
/ IRIX Installation Tools & Overlays 2002 November / SGI IRIX Installation Tools & Overlays 2002 November - Disc 4.iso / dist / motif21_dev.idb / usr / Motif-2.1 / include / Xm / SeparatoGP.h.z / SeparatoGP.h
C/C++ Source or Header  |  2002-10-15  |  5KB  |  175 lines

  1. /* 
  2.  *  @OSF_COPYRIGHT@
  3.  *  COPYRIGHT NOTICE
  4.  *  Copyright (c) 1990, 1991, 1992, 1993 Open Software Foundation, Inc.
  5.  *  ALL RIGHTS RESERVED (MOTIF). See the file named COPYRIGHT.MOTIF for
  6.  *  the full copyright text.
  7. */ 
  8. /* 
  9.  * HISTORY
  10. */ 
  11. /*   $XConsortium: SeparatoGP.h /main/11 1995/07/13 17:59:16 drk $ */
  12. /*
  13. *  (c) Copyright 1987, 1988, 1989, 1990, 1991, 1992 HEWLETT-PACKARD COMPANY */
  14. #ifndef _XmSeparatorGadgetP_h
  15. #define _XmSeparatorGadgetP_h
  16.  
  17. #include <Xm/SeparatoG.h>
  18. #include <Xm/GadgetP.h>
  19. #include <Xm/ExtObjectP.h>
  20.  
  21. #ifdef __cplusplus
  22. extern "C" {
  23. #endif
  24.  
  25. /*****************************************************************/
  26. /* The Separator Gadget Cache Object's class and instance records*/
  27. /*****************************************************************/
  28.  
  29. typedef struct _XmSeparatorGCacheObjClassPart
  30. {
  31.     int foo;
  32.     
  33. #ifdef _SGIMOTIF
  34.     XtPointer    _SG_vendorExtension;
  35. #endif
  36.  
  37. } XmSeparatorGCacheObjClassPart;
  38.  
  39.  
  40. /* separator cache class record */
  41. typedef struct _XmSeparatorGCacheObjClassRec
  42. {
  43.     ObjectClassPart                     object_class;
  44.     XmExtClassPart                      ext_class;
  45.     XmSeparatorGCacheObjClassPart       separator_class_cache;
  46. } XmSeparatorGCacheObjClassRec;
  47.  
  48. externalref XmSeparatorGCacheObjClassRec xmSeparatorGCacheObjClassRec;
  49.  
  50.  
  51. /*  The Separator Gadget Cache instance record  */
  52.  
  53. typedef struct _XmSeparatorGCacheObjPart
  54. {
  55.    Dimension      margin;
  56.    unsigned char  orientation;
  57.    unsigned char  separator_type;
  58.    GC             separator_GC;
  59.    
  60. #ifdef _SGIMOTIF
  61.    XtPointer    _SG_vendorExtension;
  62. #endif
  63.    
  64.    GC               background_GC;
  65.    GC               top_shadow_GC;
  66.    GC               bottom_shadow_GC;
  67.    
  68.    Pixel            foreground;
  69.    Pixel            background;
  70.    
  71.    Pixel            top_shadow_color;
  72.    Pixmap           top_shadow_pixmap;
  73.    
  74.    Pixel            bottom_shadow_color;
  75.    Pixmap           bottom_shadow_pixmap;
  76. } XmSeparatorGCacheObjPart;
  77.  
  78. typedef struct _XmSeparatorGCacheObjRec
  79. {
  80.   ObjectPart                object;
  81.   XmExtPart            ext;
  82.   XmSeparatorGCacheObjPart  separator_cache;
  83. } XmSeparatorGCacheObjRec;
  84.  
  85.  
  86. /*****************************************************/
  87. /*  The Separator Widget Class and instance records  */
  88. /*****************************************************/
  89.  
  90. typedef struct _XmSeparatorGadgetClassPart
  91. {
  92.    XtPointer               extension;
  93.    
  94. #ifdef _SGIMOTIF
  95.    XtPointer    _SG_vendorExtension;
  96. #endif
  97.  
  98. } XmSeparatorGadgetClassPart;
  99.  
  100.  
  101. /*  Full class record declaration for Separator class  */
  102.  
  103. typedef struct _XmSeparatorGadgetClassRec
  104. {
  105.    RectObjClassPart            rect_class;
  106.    XmGadgetClassPart           gadget_class;
  107.    XmSeparatorGadgetClassPart  separator_class;
  108. } XmSeparatorGadgetClassRec;
  109.  
  110. externalref XmSeparatorGadgetClassRec xmSeparatorGadgetClassRec;
  111.  
  112. typedef struct _XmSeparatorGadgetPart
  113. {
  114.   XmSeparatorGCacheObjPart  *cache;
  115.   
  116. #ifdef _SGIMOTIF
  117.   XtPointer    _SG_vendorExtension;
  118. #endif
  119.  
  120.   Boolean fill_bg_box;
  121. } XmSeparatorGadgetPart;
  122.  
  123. /*  Full instance record declaration  */
  124.  
  125. typedef struct _XmSeparatorGadgetRec
  126. {
  127.    ObjectPart             object;
  128.    RectObjPart            rectangle;
  129.    XmGadgetPart           gadget;
  130.    XmSeparatorGadgetPart  separator;
  131. } XmSeparatorGadgetRec;
  132.  
  133.  
  134. /* MACROS for accessing instance fields*/
  135. #define SEPG_Margin(w)        \
  136.     (((XmSeparatorGadget)(w))->separator.cache->margin)
  137. #define SEPG_Orientation(w)    \
  138.     (((XmSeparatorGadget)(w))->separator.cache->orientation)
  139. #define SEPG_SeparatorType(w)    \
  140.     (((XmSeparatorGadget)(w))->separator.cache->separator_type)
  141. #define SEPG_SeparatorGC(w)    \
  142.     (((XmSeparatorGadget)(w))->separator.cache->separator_GC)
  143. #define SEPG_BackgroundGC(w)    \
  144.     (((XmSeparatorGadget)(w))->separator.cache->background_GC)
  145. #define SEPG_TopShadowGC(w)    \
  146.     (((XmSeparatorGadget)(w))->separator.cache->top_shadow_GC)
  147. #define SEPG_BottomShadowGC(w)    \
  148.     (((XmSeparatorGadget)(w))->separator.cache->bottom_shadow_GC)
  149. #define SEPG_Foreground(w)    \
  150.     (((XmSeparatorGadget)(w))->separator.cache->foreground)
  151. #define SEPG_Background(w)    \
  152.     (((XmSeparatorGadget)(w))->separator.cache->background)
  153. #define SEPG_TopShadowColor(w)    \
  154.     (((XmSeparatorGadget)(w))->separator.cache->top_shadow_color)
  155. #define SEPG_TopShadowPixmap(w)    \
  156.     (((XmSeparatorGadget)(w))->separator.cache->top_shadow_pixmap)
  157. #define SEPG_BottomShadowColor(w)    \
  158.     (((XmSeparatorGadget)(w))->separator.cache->bottom_shadow_color)
  159. #define SEPG_BottomShadowPixmap(w)    \
  160.     (((XmSeparatorGadget)(w))->separator.cache->bottom_shadow_pixmap)
  161.  
  162. /* Convenience Macros */
  163. #define SEPG_Cache(w)        \
  164.     (((XmSeparatorGadget)(w))->separator.cache)
  165. #define SEPG_ClassCachePart(w) \
  166.         (((XmSeparatorGadgetClass)xmSeparatorGadgetClass)->gadget_class.cache_part)
  167.  
  168.  
  169. #ifdef __cplusplus
  170. }  /* Close scope of 'extern "C"' declaration which encloses file. */
  171. #endif
  172.  
  173. #endif /* _XmSeparatorGadgetP_h */
  174. /* DON'T ADD STUFF AFTER THIS #endif */
  175.